Instructions for Twistory 1.2


     The five remaining mark-ups in the .ttt file format are #c[ity], #i[tem], #p[erson], #e[vent], and #s[phere]. Only the first letter of each is needed. These mark-ups each signal the beginning of a different type of data record.

Place Records: #c

     The start of a place record is identified by the characters "#c". ("c" was chosen for "city," but regions of all size use the same format.) Here is a sample listing of four places:

#c <n>Canada<l>55N100W<rad>1200<nat>Canadian<col>100 60 80
#c <n>Saskatchewan<l>54N106W<rad>400<reg>Canada
#c <n>Ontario<l>49N83W<rad>600<reg>Canada
#c <n>Toronto<l>4339N7920W<reg>Ontario

As you can see, places also have a hierarchy. When the map is at small scales, cities are not shown. An event occurring in Toronto would then appear next to the word "Ontario." At even smaller scales, events occurring in both Ontario and Saskatchewan would appear next to the word "Canada."

Menu Item Records: #i

     Records of this type define the occupations and types by which people and event, respectively, are grouped and selected in Twistory. In the default database they are all defined in the files "p-menu.ttt" and "e-menu.ttt", before any people or events are read in. Each record creates one item in either the "People" or "Events" menu. The menu item may be simple or hierarchical. Each item may have one or more occupations or types associated with it.

     Here is an example of an item in the "People" menu:

#item
<n>Leaders
<n>Monarchs<o>king<icon>purple robes<o>queen<fem><icon>purple robes
<n>Other Royalty<o>prince<icon>blue robes<o>princess<fem><icon>blue robes

This item has a single name first, and then a list of two names. The word "Leaders" will be the hierarchical menu title, and it will have two choices, "Monarchs" and "Other Royalty." Altogether, four occupations are defined: king, queen, prince and princess. Thereafter, these occupational names may be used in the <o> field of a person record. The <icon> field specifies the icon that will be used for each occupation. The <fem> field says that those occupations are implicitly female; a woman with that occupation does not need a <fem> field in her record. (Sex is used to determine colour in the genealogy windows.)

     Here are two examples of items in the "Events" menu:

#item
<n>Conflict
<n>Wars<t>war<icon>helmet<col>black
<n>Battles<t>battle<icon>swords<col>black
<n>Sieges<off><t>siege<icon>trebuchet

#item
<n>Disasters<off><t>fire<icon>fire<t>volcano<icon>volcano<t>earthquake<aka>quake<t>shipwreck<aka>wreck<icon>shipwreck

The first one is a hierarchical menu with three items, each with one associated event type. The second is a simple menu item, with four event types associated. The <col> field after the types 'war' and 'battle' means that these events types will have black bars in the time-line window. The <aka> field defines a short form for the event type name, which may be used instead in the event record. The <off> field tells Twistory to turn this menu item off initially when it loads it. (Subsequently, Twistory tries to remember your setting in its preferences.)

     One cannot mix occupation definitions and event type definitions in the same item. So a #item record may have either <o> or <t> fields, but not both. Also, the former may not have <col> fields, and the latter may not have <fem> fields.

Person Records: #p

     A person record begins with the characters "#p". Here is an example of the information for four people:

#p <nat>British<o>king<n>George V<fa>Edward VII<b>1865 Jun 3<ac>1910 May 6<d>1936 Jan 20
#p <nat>British<o>king<n>Edward VIII<fa>George V<b>1894 Jun 23<ac>1936 Jan 20<ab>1936 Dec 11<d>1972
#p <nat>British<o>king<n>George VI<fa>George V<b>1895 Dec 14<ac>1936 Dec 11<d>1952 Feb 6
#p <nat>British<o>queen<n>Elizabeth II<fa>George VI<b>1926 Apr 21<ac>1952 Feb 6
#p <nat>British<o>prince<n>Charles<mo>Elizabeth II<b>1948 Nov 14

     Family relations are described by the <fa> and <mo> fields. The creation of the family tree in the genealogy views is dependent on those links being specified in the database. A person's record may specified his/her father and/or mother by name, but the parents must then also be in the database, and must appear prior to their children.

     Children are specified only by their own links to their parents. This seems to be the simplest way to implement family relations in the database, since one may have many children, and several spouses, but one usually has unique parents. (In the case of adoption, where there could be more than two parents, usually only one of the parents is a historical figure who would appear in the database. Failing that, Twistory cannot yet treat this case.) Unions (marriages, etc.) do not appear in genealogy windows, but that may be an option in future. Relations other than parent-child cannot be specified directly; the intermediate person(s) must also be in the database. (For example, the relationship of uncle requires both the appropriate parent and grandparent to be in the database, in order for that relation to be revealed in some genealogy window.)

     The occupation field <o> is provided so that certain categories of people may be selected for viewing. They should be first defined in a menu item (#i) record. Multiple occupations may be given for one person. Certain occupations, notably leaders, have distinct icons in the map view. (Later releases of Twistory should have distinct icons for more occupations.)

The last item in the default menu, "family," is not strictly an occupation. It allows a user who has put his/her own family tree into the database to select them as a distinct group by putting <o>family with each person.

     The nationality field <nat> is provided so that a person's time-line bar appears in an appropriate colour. The colour used will be the one assigned to the geographical region identified in this field. Look at this example:

#c <n>France<l>47N03E<rad>400<nat>French<reg>Europe<col>100 100 80
...
#p <nat>French<o>author<n>Molière<aka>Jean Baptiste Poquelin<b>1622<d>1673

Molière's time-line bar appears in light yellow (red=100%; green=100%; blue=80%), along with all of his countrymen.

Event Records: #e

     The start of an event record is identified by the characters "#e". Here is a sample listing of events:

#bc

#e <t>battle<n>Fall of Jerusalem<d>586<c>Jerusalem<info>The city and the temple are destroyed.

#ad

#e <t>use<n>decimal numbers in commerce<c>India<d>600
#e <t>invent<au>Gutenberg<n>movable type<d>1456<c>Germany
#e <t>wreck<n>The Vasa<d>1628 Aug 10<c>Sweden
#e <t>war<n>Third Anglo-Dutch War<d>1672<e>1674
#e <t>extinct<n>Dodo<c>Mauritius<d>1681

     Each event should have a type. They may have only one type, and these types must be previously defined in a menu item (#i) record. An event's type determines its icon. (Those types without a specific icon use the default icon, a red star.) The type also determines how it is grouped for selection using the "Events" menu.

Sphere Records: #s

     The outline of a region such as an empire can be shown in the map view with a "sphere-of-influence" record. Here is an example:

#bc
#s <n>Old Babylonian Empire<col>80 100 100<d>1800(100)<poly>"oldbab.poly"<e>1600(100)

The sample polygon has only one date interval, but it could have more. If you construct the polygons corresponding to the growth and decline of an empire, all of them can be linked into one sphere record by repeating the <d> and <poly> fields. Then end it with one <e> field.